#ifndef CC_FIXED_QUEUE_H
#define CC_FIXED_QUEUE_H

/****	Public header file	*/
#include "./cc_type.h"

/****	define */
#define CFG_MODE_FQUEUE			   

/***	struct define	*/

typedef struct CC_Fixed_Queue_V4 	tFQueue;

#ifdef CFG_MODE_FQUEUE
extern void FQueue_ShowObj(tFQueue* pObj);
extern tFQueue* FQueue_Create(uint32_t ItemNum, uint32_t ItemSz);

extern uint32_t FQueue_Enque(tFQueue* pObj,uint32_t PkgLen, uint8_t* pPkg);
extern uint32_t FQueue_Deque(tFQueue* pObj,uint32_t RBufSz, uint8_t* pRBuf);
extern uint32_t FQueue_Peek(tFQueue* pObj,uint32_t RBufSz, uint8_t* pRBuf);
extern uint32_t FQueue_DropOne(tFQueue* pObj);
#endif


#endif
